package src.Aula08.Ex2;

enum VariedadeCarne {
    VACA, PORCO, PERU, FRANGO, OUTRA
}

public class Carne extends Alimento {
    private VariedadeCarne variedadeCarne;

    public Carne(VariedadeCarne variedadeCarne, double proteinas, double calorias, double peso) {
        super(proteinas, calorias, peso);
        this.variedadeCarne = variedadeCarne;
    }

    @Override
    public String toString() {
        return String.format("Carne %s, proteinas %.2f, calorias %.2f, peso %.2f", variedadeCarne.toString(), getProteinas(),
                getCalorias(), getPeso());
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = super.hashCode();
        result = prime * result + ((variedadeCarne == null) ? 0 : variedadeCarne.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (!super.equals(obj))
            return false;
        if (getClass() != obj.getClass())
            return false;
        Carne other = (Carne) obj;
        if (variedadeCarne != other.variedadeCarne)
            return false;
        return true;
    }

    public VariedadeCarne getVariedadeCarne() {
        return variedadeCarne;
    }

    public void setVariedadeCarne(VariedadeCarne variedadeCarne) {
        this.variedadeCarne = variedadeCarne;
    }

}
